
Обновление Java — это установка более свежей сборки внутри одной мажорной версии, которую вы уже используете. Это необходимо для обеспечения безопасности и стабильности ваших приложений.
В этой статье вы узнаете, какие бывают обновления Java, какие версии получают обновления и как обновить JDK в зависимости от вашей платформы.
Содержание
- Зачем обновлять Java
- График обновлений Java
- CPU и PSU: в чём разница?
- Какие версии Java получают бесплатные обновления
- Как узнать текущую версию Java
- Как обновить Java
- Проверьте корректность установки
- Контейнеры
Зачем обновлять Java
Обновление JDK так же важно, как и обновление любого другого программного обеспечения. Игнорирование обновлений чревато:
- уязвимостями и атаками, использующими известные эксплойты;
- нестабильной работой приложений из-за багов.
Немного статистики:
- только в 2024 году в JDK было выявлено и исправлено 13 CVE (уязвимостей);
- с октября 2018 по июль 2025 — 176 CVE в JDK 11.
Каждая известная уязвимость в вашем проекте — это потенциальная «чёрная дыра» для злоумышленников. Некоторые уязвимости могут иметь глобальный эффект. Например, Log4Shell — уязвимость с удалённым выполнением кода (RCE) в Log4J с максимальным баллом CVSS (10), затронувшая миллионы систем. Несмотря на то, что проблема уже устранена, старая уязвимая версия Log4J всё ещё используется, в том числе как транзитивная зависимость.
Обновления Java дают вам:
- патчи безопасности,
- исправления багов,
- улучшения производительности, в том числе за счёт бэкпортов из новых версий JDK. Однако чем старее версия, тем меньше таких улучшений попадает обратно.
Если вы пока не готовы переходить на более свежую версию Java, но не хотите терять в производительности, то обратите внимание на Axiom JDK Express. Он объединяет в себе JVM 21 и JDK 8 или 11, обеспечивая прирост производительности без необходимости обновлять зависимости и переписывать код.
График обновлений Java
Обновление Java означает переход внутри одной мажорной версии, например с JDK 21.0.1 на JDK 21.0.8. Это не то же самое, что переход на новую версию (upgrade) — например, с JDK 11 на JDK 21.
LTS и функциональные релизы
Обновления выпускаются ежеквартально для активных веток OpenJDK, то есть LTS-версий и текущего функционального релиза. Как правило, это третий вторник января, апреля, июля и октября. Обновления включают патчи безопасности и исправления багов.
Поддержка от разных поставщиков
LTS-версии поддерживаются несколько лет, но точный срок зависит от поставщика и конкретной версии Java (подробное сравнение см. в таблице поддержки JDK от различных поставщиков ниже). Функциональные релизы поддерживаются 6 месяцев с момента выпуска.
Oracle JDK | Axiom JDK | Liberica JDK | Amazon Corretto | Azul Zulu | IBM Semeru Runtimes | Eclipse Temurin* | Red Hat OpenJDK | |
---|---|---|---|---|---|---|---|---|
Окончание коммерческой поддержки версий Java | ||||||||
JDK 6 | – | Март 2028 | Март 2026 | – | Декабрь 2027 | – | – | – |
JDK 7 | – | Март 2028 | Март 2026 | – | Декабрь 2027 | – | – | – |
JDK 8 | Декабрь 2030 | Март 2031 | Март 2031 | Декабрь 2030 | Декабрь 2030 | Ноябрь 2026 | – | Ноябрь 2026 |
JDK 11 | Январь 2032 | Март 2032 | Март 2032 | Январь 2032 | Январь 2032 | Октябрь 2027 | – | Октябрь 2024 |
JDK 17 | Сентябрь 2029 | Март 2030 | Март 2030 | Октябрь 2029 | Сентябрь 2029 | Октябрь 2027 | – | Октябрь 2027 |
JDK 21 | Сентябрь 2031 | Март 2032 | Март 2032 | Октябрь 2030 | Сентябрь 2031 | Декабрь 2029 | – | Декабрь 2029 |
JDK 25 | Сентябрь 2033 | N/A | Март 2034 | N/A | Сентябрь 2033 | N/A | – | N/A |
Период поддержки более новых версий Java | ||||||||
JDK 17+ | 8 лет | 8,5 лет | 8,5 лет | 7 лет | 8 лет | 6 лет | – | 6 лет |
*Eclipse Temurin поддерживается другими поставщиками
CPU и PSU: в чём разница?
Существует два типа обновлений Java:
- CPU (Critical Patch Update) — включают только критические патчи безопасности и важные исправления. Они затрагивают минимальное число библиотек и не нарушают работу приложений.
- PSU (Patch Set Update) — включают всё, что в CPU, а также дополнительные некритичные исправления, улучшения и новые фичи.
Большинство сборок OpenJDK — это PSU, но Axiom выпускает также CPU-сборки.
Какие версии Java получают бесплатные обновления
Большинство поставщиков JDK бесплатно обновляют основные LTS-версии для коммерческого и личного использования, но список поддерживаемых версий различается.
- Например, SAP и Microsoft не обновляют JDK 8.
- Axiom предоставляет обновления для всех LTS-версий: 8, 11, 17 и 21.
Если вы используете Oracle Java, всё сложнее:
- Java 8 и 11 от Oracle — бесплатны только для личного использования.
- Начиная с Java 17, Oracle выпускает бесплатные обновления для личного и коммерческого использования в течение 3 лет, после чего вы либо переходите на следующую LTS-версию, либо покупаете лицензию.
Если вы используете Java 6 или 7, то знайте, что бесплатных обновлений больше нет и большинство поставщиков их не поддерживают. Однако Axiom предоставляет коммерческую поддержку с ежеквартальными патчами безопасности и для JDK 6 и 7, а также круглосуточную техническую поддержку.
Для более старых версий (до 6/7) обновлений вообще нет. В таком случае мы рекомендуем хотя бы перейти на Axiom JDK 6 или 7, чтобы получать патчи безопасности, или лучше — на Axiom JDK 8, который будет поддерживаться до 2032 года. Мы поможем с миграцией.
Как узнать текущую версию Java
На любой ОС выполните следующую команду:
java -version
Пример вывода:
openjdk version "21.0.8" 2025-07-15 LTS
OpenJDK Runtime Environment (build 21.0.8+12-LTS)
OpenJDK 64-Bit Server VM (build 21.0.8+12-LTS, mixed mode, sharing)
Если команда не распознаётся и вы видите сообщение: “java is not recognized as an internal or external command”, проверьте переменную JAVA_HOME и наличие пути к <путь до Axiom JDK>/bin в переменной PATH. Вот как это сделать для разных ОС:
Для macOS и Linux
В командной строке выполните следующие команды:
export PATH=<путь до Axiom JDK>/bin:$PATH
export JAVA_HOME=<путь до Axiom JDK>
Для Windows
- В поисковой строке меню Пуск введите Изменение системных переменных среды и выберите соответствующий пункт.
- Во вкладке Дополнительно нажмите кнопку Переменные среды…
- В системных переменных найдите
Path
, нажмите Изменить, затем Создать и укажитеC:/путь_до_JDK/bin
. Сохраните изменения, нажав Ок. - Там же в системных переменных создайте переменную
JAVA_HOME
и задайте путь к директории JDK.
Как обновить Java
Способы могут отличаться в зависимости от поставщика JDK. Axiom JDK не поставляется через пакетные менеджеры, а устанавливается вручную. Если вы не являетесь клиентом Axiom, вы можете бесплатно скачать LTS-версии и текущий функциональный релиз для систем Windows, macOS и Linux через личный кабинет разработчика.
Вы также можете загрузить Axiom JDK либо из Центра загрузок, заполнив заявку, либо по ссылке на портале поддержки. Доступ к этому порталу предоставляется только клиентам с активным договором поддержки.
В качестве примера используется Axiom JDK 21.0.8.
Windows
Скачайте установочный файл .msi
через личный кабинет разработчика в разделе Axiom JDK -> Standard.
Далее есть несколько способов установки:
Способ 1. Через мастер установки
Следуйте инструкциям мастера установки. Текущая версия будет перезаписана.
Способ 2. Через командную строку
Чтобы установить Axiom JDK автоматически, без вмешательства пользователя, откройте командную строку и выполните следующую команду:
msiexec /i axiomjdk-jdk-pro21.0.8+12-windows-amd64.msi /qn /quiet /norestart /l*v "Axiom_install.log"
, где:
/i
— установить указанное ПО.axiomjdk-jdk-pro21.0.8+12-windows-amd64.msi
— имя установочного файла. Точное имя файла смотрите в папке, куда скачался файл./qn
— без пользовательского интерфейса./quiet
— тихий режим без вмешательства пользователя./norestart
— не перезагружать компьютер после завершения установки./l*v "Axiom_install.log"
— подробная регистрация всех сообщений в указанный файл журнала.
Подробнее и другие способы установки см. в руководстве по установке Axiom JDK для Windows.
macOS
- Скачайте установочный файл
.dmg
или.pkg
. через личный кабинет разработчика в разделе Axiom JDK -> Standard. - (Для
.pkg
этот шаг пропускается) Запустите программу установки, дважды щелкнув загруженный файл.dmg
. - Дважды щелкните значок
.pkg
, чтобы запустить мастер установки. - Следуйте инструкциям мастера установки.
Подробности и другие способы установки см. в руководстве по установке Axiom JDK для macOS.
Linux
- Скачайте установочный файл
.deb
через личный кабинет разработчика в разделе Axiom JDK -> Standard. - Установите пакет с помощью инструмента
apt
.
sudo apt install ./axiomjdk-jdk-pro21.0.8+12-linux-amd64.deb
Подробности и другие способы см. в руководстве по установке Axiom JDK для Linux.
Проверьте корректность установки
Чтобы проверить правильно ли установлена Axiom JDK, откройте командную строку и выполните следующую команду:
java -version
В командной строке должна отобразиться информация о текущей версии JDK:
openjdk version "21.0.8" 2025-07-15 LTS
OpenJDK Runtime Environment (build 21.0.8+12-LTS)
OpenJDK 64-Bit Server VM (build 21.0.8+12-LTS, mixed mode, sharing)
Контейнеры
Если вы используете контейнеры, обновление базового образа критично для безопасности. В этом случае при каждой пересборке будет использоваться свежий образ с актуальными патчами.
Axiom Runtime Container Pro представляет собой среду разработки Axiom JDK Pro запускаемую под управлением ОС Axiom Linux и поставляемую в виде готового контейнера.
Получите доступ к образу Axiom Runtime Container, оставив контактные данные на нашем сайте.